home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 007 / rascal.arc / CHARS.RAS < prev    next >
Text File  |  1980-01-01  |  1KB  |  63 lines

  1. 'CHARS.RAS: Display all the PC's screen characters, modified from
  2. '           Peter Norton's book.
  3.  
  4. INCLUDE DEBUG.INC
  5. DEBUG
  6.  
  7. INCLUDE INPUT.INC
  8. INCLUDE SCREEN.INC
  9.  
  10. PROCEDURE MAIN
  11.     DO INITIALIZE.SCREEN
  12.     DO INITIALIZE.INPUT
  13.     L.TITLE$ = "CHARS - Display the IBM PC Character Set"
  14.     R.TITLE$ = "Rascal version 1.05"
  15.     DO SET.TITLES
  16.     FUNC.MSG$ = "Rascal Example #1"
  17.     DO SET.FUNCTION.MSG
  18.     DO GET.DISPLAY.TYPE
  19.     DO SET.TITLES
  20.     DO SET.FUNCTION.MSG
  21.     DO BORDERS
  22.     DO BUILD.DISPLAY.ARRAY
  23.     DO FINISH
  24. ENDPROC
  25.  
  26. PROCEDURE GET.DISPLAY.TYPE
  27.     LOCATE 5,1 : PRINT "Is this a color-graphics display? ";
  28.     DO GET.YES.OR.NO
  29.     IF ANSWER = YES
  30.         SEGVAL! = &HB800    'Color segment
  31.     ELSE
  32.         SEGVAL! = &HB000    'Monochrome segment
  33.     ENDIF
  34.     DEF SEG = SEGVAL!
  35.     PRINT
  36. ENDPROC
  37.  
  38. PROCEDURE BORDERS
  39.     FOR HEX.DIGIT% = 0 TO 15
  40.         LOCATE 6,HEX.DIGIT% * 3 + 14
  41.         PRINT HEX$(HEX.DIGIT%)
  42.         LOCATE HEX.DIGIT%+8,8
  43.         PRINT HEX$(HEX.DIGIT%)
  44.     NEXT HEX.DIGIT%
  45.     LOCATE ,,0
  46. ENDPROC
  47.  
  48. PROCEDURE BUILD.DISPLAY.ARRAY
  49.     FOR ROW% = 0 TO 15
  50.         FOR COL% = 0 TO 15
  51.             POKE (ROW%+7)*160+COL%*6+26, COL%+ROW%*16
  52.         NEXT COL%
  53.     NEXT ROW%
  54. ENDPROC
  55.  
  56. PROCEDURE FINISH
  57.     LINE.24.MSG$ = "Press any key to return to DOS..."
  58.     DO SET.LINE.24
  59.     DO IN.GET.KEY
  60.     DO CLEAR.SCREEN
  61.     SYSTEM
  62. ENDPROC
  63.